Skip to main content

v0.3.1

2022-09-23

DefraDB v0.3.1 is a minor release, primarily focusing on additional/extended features and fixes of items added in the v0.3.0 release.

Features

  • Add cid support for allCommits (#857)
  • Add offset support to allCommits (#859)
  • Add limit support to allCommits query (#856)
  • Add order support to allCommits (#845)
  • Display CLI usage on user error (#819)
  • Add support for dockey filters in child joins (#806)
  • Add sort support for numeric aggregates (#786)
  • Allow filtering by nil (#789)
  • Add aggregate offset support (#778)
  • Remove filter depth limit (#777)
  • Add support for and-or inline array aggregate filters (#779)
  • Add limit support for aggregates (#771)
  • Add support for inline arrays of nillable types (#759)
  • Create errors package (#548)
  • Add ability to display peer id (#719)
  • Add a config option to set the vlog max file size (#743)
  • Explain topLevelNode like a MultiNode plan (#749)
  • Make topLevelNode explainable (#737)

Fixes

  • Order subtype without selecting the join child (#810)
  • Correctly handles nil one-one joins (#837)
  • Reset scan node for each join (#828)
  • Handle filter input field argument being nil (#787)
  • Ensure CLI outputs JSON to stdout when directed to pipe (#804)
  • Error if given the wrong side of a one-one relationship (#795)
  • Add object marker to enable return of empty docs (#800)
  • Resolve the extra typeIndexJoins for _avg aggregate (#774)
  • Remove _like filter operator (#797)
  • Remove having gql types (#785)
  • Error if child _group selected without parent groupBy (#781)
  • Error nicely on missing field specifier (#782)
  • Handle order input field argument being nil (#701)
  • Change output to outputpath in config file template for logger (#716)
  • Delete mutations not correct persisting all keys (#731)

Tooling

  • Ban the usage of ioutil package (#747)
  • Migrate from CircleCi to GitHub Actions (#679)

Documentation

  • Clarify meaning of url param, update in-repo CLI docs (#814)
  • Disclaimer of exposed to network and not encrypted (#793)
  • Update logo to respect theme (#728)

Refactoring

  • Replace all interface{} with any alias (#805)
  • Use fastjson to parse mutation data string (#772)
  • Rework limit node flow (#767)
  • Make Option immutable (#769)
  • Rework sum and count nodes to make use of generics (#757)
  • Remove some possible panics from codebase (#732)
  • Change logging calls to use feedback in CLI package (#714)

Testing

  • Add tests for aggs with nil filters (#813)
  • Add not equals filter tests (#798)
  • Fix cli/peerid_test to not clash addresses (#766)
  • Add change detector summary to test readme (#754)
  • Add tests for inline array grouping (#752)

Continuous integration

  • Reduce test resource usage and test with file db (#791)
  • Add makefile target to verify the local module cache (#775)
  • Allow PR titles to end with a number (#745)
  • Add a workflow to validate pull request titles (#734)
  • Fix the linter version to v1.47 (#726)

Chore

  • Remove file system paths from resulting executable (#831)
  • Add goimports linter for consistent imports ordering (#816)
  • Improve UX by providing more information (#802)
  • Change to defra errors and handle errors stacktrace (#794)
  • Clean up go.mod with pruned module graphs (#756)
  • Update to v0.20.3 of libp2p (#740)
  • Bump to GoLang v1.18 (#721)